/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Iterator;
/**
 *
 * @author пользователь
 */
public class Task_3 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
       //Создадим объект scanner и свяжем его со стандартным входным потоком system.in
        Scanner in = new Scanner(System.in);
        String s=""; int m;
        ArrayList<String> sname = new ArrayList();
        ArrayList<Integer> mark = new ArrayList();
        System.out.println("Введите фамилию:");
        //Считывание строки до пробела из потока
        s = in.next();
        //Вводить фамилии английскими буквами
        //Чтобы выйти из цикла ввода, написать end после очередного запроса фамилии
        while(!(s.equals("end")))
        {
            sname.add(s);
            System.out.println("Введите оценку:");
            m = in.nextInt();
            mark.add(m);
            System.out.println("Введите фамилию:");
            s = in.next();
        }  
        
        ArrayList<String> od1 = new ArrayList();//фамилии
        ArrayList<Integer> od2 = new ArrayList(); //оценки
        int mar = 0; //сумматор оценок
        int count, count1; 
		count1 = sname.size();
        for(int i = 0; i < count1; i++)
        {
            if(sname.size()!=0){
            Iterator<String> iter1 = sname.iterator(); 
            Iterator<Integer> iter2 = mark.iterator(); 
            s = iter1.next();
            m = iter2.next();
            
            
            od1.add(s); 
			mar = 0; count = sname.size();
            mar += m;
            iter1.remove();
            iter2.remove();
            for(int j = 0; j < count; j++)
            {
                if(iter1.hasNext())
                {
                                
				if (s.equals(iter1.next()))
                {
					mar += iter2.next();
                    iter1.remove();
                    iter2.remove();
                }
                }
            }
            od2.add(mar);
        }
        }
        Iterator iter1 = od1.iterator(); 
        Iterator iter2 = od2.iterator();
        for(int i = 0; i < od1.size(); i++)
        {
            System.out.println(iter1.next()+ " " + iter2.next());            
        }
    }
}
